home *** CD-ROM | disk | FTP | other *** search
/ Quick PC 61 / Quick PC 61.iso / I386 / DRIVER.CAB / ibm17523.ppd < prev    next >
Encoding:
PostScript Printer Description  |  2003-02-21  |  16.1 KB  |  455 lines

  1. *PPD-Adobe: "4.2"
  2. *% Adobe Systems PostScript(R) Printer Description File
  3. *% For IBM LaserPrinter 4019
  4. *% For use with Windows NT
  5. *% Produced by Lexmark International, Inc.
  6. *%
  7. *% Copyright (c) 1993-1996 Lexmark International Inc.  All Rights Reserved.
  8. *% Permission is granted for redistribution of this file as
  9. *% long as this copyright notice is intact and the content
  10. *% of the file is not altered in any way from its original form.
  11. *%
  12. *%
  13.  
  14. *FormatVersion: "4.2"
  15. *FileVersion: "3.3"
  16. *LanguageVersion: English
  17. *PCFileName: "IBM17523.PPD"
  18. *Product: "(IBM LaserPrinter)"
  19. *PSVersion: "(52.1) 0"
  20. *PSVersion: "(52.3) 0"
  21. *ModelName: "IBM 4019 LaserPrinter PS17"
  22. *ShortNickName: "IBM 4019 LaserPrinter PS17"
  23. *NickName: "IBM 4019 LaserPrinter PS17"
  24.  
  25. *% === Options and Constraints ============
  26.  
  27. *OpenGroup: InstallableOptions/Options Installed
  28.  
  29. *OpenUI *Option1/Lower Tray: Boolean
  30. *DefaultOption1: False
  31. *Option1 True/Installed: ""
  32. *Option1 False/Not Installed: ""
  33. *CloseUI: *Option1
  34.  
  35. *OpenUI *Option2/Envelope Feeder: Boolean
  36. *DefaultOption2: False
  37. *Option2 True/Installed: ""
  38. *Option2 False/Not Installed: ""
  39. *CloseUI: *Option2
  40.  
  41. *OpenUI *Option3/Printer Memory: PickOne
  42. *DefaultOption3: 1Meg
  43. *Option3 1Meg/1.5 Mb Printer Memory: ""
  44. *Option3 2Meg/2.5 Mb Printer Memory: ""
  45. *Option3 4Meg/4 Mb Printer Memory: ""
  46. *CloseUI: *Option3
  47.  
  48. *CloseGroup: InstallableOptions
  49.  
  50. *UIConstraints: *Option1 False *InputSlot Lower
  51. *UIConstraints: *Option1 False *TraySwitch On
  52. *UIConstraints: *Option2 False *InputSlot Envelope
  53.  
  54. *% === Basic Capabilities ============
  55.  
  56. *LanguageLevel: "1"
  57. *FreeVM: "200000"
  58. *ColorDevice: False
  59. *DefaultColorSpace: Gray
  60. *VariablePaperSize: False
  61. *FileSystem: False
  62. *Throughput: "10"
  63. *Password: "0"
  64. *ExitServer: "
  65.  count 0 eq   % is the password on the stack?
  66.  { true }
  67.  { dup        % potential password
  68.    statusdict /checkpassword get exec not
  69.  } ifelse
  70.  {  %  if no password or not valid
  71.    (WARNING : Cannot perform the exitserver command.) =
  72.    (Password supplied is not valid.) =
  73.    (Please contact the author of this software.) = flush
  74.    quit
  75.  } if
  76.  serverdict /exitserver get exec
  77.  "
  78. *End
  79. *Reset: "
  80.  count 0 eq  % is the password on the stack?
  81.  { true }
  82.  { dup      % potential password
  83.    statusdict /checkpassword get exec not
  84.  } ifelse
  85.  {  %  if no password or not valid
  86.    (WARNING : Cannot reset printer.) =
  87.    (Password supplied is not valid.) =
  88.    (Please contact the author of this software.) = flush
  89.    quit
  90.  } if
  91.  serverdict /exitserver get exec
  92.  systemdict /quit get exec
  93.  (WARNING : Printer Reset Failed.) = flush
  94.  "
  95. *End
  96.  
  97. *% === Resolution ============
  98. *OpenUI *Resolution/Resolution: PickOne
  99. *DefaultResolution: 300dpi
  100. *Resolution 300dpi/300 dpi: ""
  101. *?Resolution: "
  102.  save initgraphics
  103.  0 0 moveto currentpoint matrix defaultmatrix transform
  104.  0 72 lineto currentpoint matrix defaultmatrix transform
  105.  3 -1 roll sub dup mul
  106.  3  1 roll exch sub dup mul
  107.  add sqrt round cvi (          ) cvs print (dpi) = flush
  108.  restore
  109.  "
  110. *End
  111. *CloseUI: *Resolution
  112.  
  113. *% === Halftone Information ===============
  114.  
  115. *ScreenFreq: "60.0"
  116. *ScreenAngle: "45.0"
  117. *DefaultScreenProc: Dot
  118. *ScreenProc Dot: "
  119.  {abs exch abs 2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1
  120.  sub }{dup mul exch dup mul add 1 exch sub }ifelse }
  121.  "
  122. *End
  123. *ScreenProc Line: "{ pop }"
  124. *ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"
  125.  
  126. *DefaultTransfer: Null
  127. *Transfer Null: "{ }"
  128. *Transfer Null.Inverse: "{ 1 exch sub }"
  129.  
  130. *% === Paper Handling ===================
  131.  
  132. *% Code in this section selects a tray and sets up a frame buffer.
  133. *OpenUI *PageSize:  PickOne
  134. *OrderDependency: 30 AnySetup *PageSize
  135. *DefaultPageSize: Letter
  136. *PageSize Letter/Letter: "statusdict begin {lettertray}stopped {3 setpapertray letter}if end"
  137. *PageSize Legal/Legal: "statusdict begin {legaltray}stopped {3 setpapertray legal}if end"
  138. *PageSize Executive/Executive: "
  139.  statusdict begin {executivetray}stopped {3 setpapertray executivepage}if end"
  140. *End
  141. *PageSize A4/A4: "statusdict begin {a4tray}stopped {3 setpapertray a4}if end"
  142. *PageSize A5/A5: "statusdict begin {a5tray}stopped {3 setpapertray a5}if end"
  143. *PageSize B5/B5: "statusdict begin {b5tray}stopped {3 setpapertray b5}if end"
  144. *PageSize Monarch/Monarch Envelope: "
  145.  statusdict begin {3.875x7.5envelopetray}stopped
  146.  {4 setpapertray 3.875x7.5envelope}if end
  147.  279 540 translate 180 rotate"
  148. *End
  149. *PageSize C9/C9 Envelope: "
  150.  statusdict begin {3.875x8.875envelopetray}stopped
  151.  {4 setpapertray 3.875x8.875envelope}if end
  152.  279 639 translate 180 rotate"
  153. *End
  154. *PageSize Comm10/C10 Envelope: "
  155.  statusdict begin {4.125x9.5envelopetray}stopped
  156.  {4 setpapertray 4.125x9.5envelope}if end
  157.  297 684 translate 180 rotate"
  158. *End
  159. *PageSize DL/DL Envelope: "
  160.  statusdict begin {110x220envelopetray}stopped
  161.  {4 setpapertray 110x220envelope}if end
  162.  312 624 translate 180 rotate"
  163. *End
  164. *PageSize C5/C5 Envelope: "
  165.  statusdict begin {162x229envelopetray}stopped
  166.  {4 setpapertray 162x229envelope}if end
  167.  459 649 translate 180 rotate"
  168. *End
  169. *PageSize ISOB5/B5 Envelope: "
  170.  statusdict begin {176x250envelopetray}stopped
  171.  {4 setpapertray 176x250envelope}if end
  172.  499 709 translate 180 rotate"
  173. *End
  174. *?PageSize: "
  175.  save
  176.  12 dict
  177.    dup /letter (Letter) put
  178.    dup /legal (Legal) put
  179.    dup /executivepage (Executive) put
  180.    dup /a4 (A4) put
  181.    dup /a5 (A5) put
  182.    dup /b5 (B5) put
  183.    dup /3.875x7.5envelope (Monarch) put
  184.    dup /3.875x8.875envelope (Envelope.279.639) put
  185.    dup /4.125x9.5envelope (Comm10) put
  186.    dup /110x220envelope (DL) put
  187.    dup /162x229envelope (C5) put
  188.    dup /176x250envelope (Envelope.499.709) put
  189.  statusdict /papersize get exec
  190.  3 1 roll  {get} stopped {(Unknown)}if
  191.  exch  not { print (.Transverse) }if
  192.  = flush
  193.  restore
  194.  "
  195. *End
  196. *CloseUI: *PageSize
  197.  
  198. *% These entries will set up the frame buffer. Usually used with manual feed.
  199. *OpenUI *PageRegion:  PickOne
  200. *OrderDependency: 40 AnySetup *PageRegion
  201. *DefaultPageRegion: Letter
  202. *PageRegion Letter/Letter: "letter"
  203. *PageRegion Legal/Legal: "legal"
  204. *PageRegion Executive/Executive: "executivepage"
  205. *PageRegion A4/A4: "a4"
  206. *PageRegion A5/A5: "a5"
  207. *PageRegion B5/B5: "b5"
  208. *PageRegion Monarch/Monarch Envelope: "3.875x7.5envelope 279 540 translate 180 rotate"
  209. *PageRegion C9/C9 Envelope: "3.875x8.875envelope 279 639 translate 180 rotate"
  210. *PageRegion Comm10/C10 Envelope: "4.125x9.5envelope 297 684 translate 180 rotate"
  211. *PageRegion DL/DL Envelope: "110x220envelope 312 624 translate 180 rotate"
  212. *PageRegion C5/C5 Envelope: "162x229envelope 459 649 translate 180 rotate"
  213. *PageRegion ISOB5/B5 Envelope: "176x250envelope 499 709 translate 180 rotate"
  214. *CloseUI: *PageRegion
  215.  
  216. *DefaultImageableArea: Letter
  217. *ImageableArea Letter:    "18 17 597 776"
  218. *ImageableArea Legal:     "18 18 597 992"
  219. *ImageableArea Executive: "18 18 505 740"
  220. *ImageableArea A4:        "18 19 578 827"
  221. *ImageableArea A5:        "18 13 405 580"
  222. *ImageableArea B5:        "18 18 505 711"
  223. *ImageableArea Monarch:   "1 13 260 526"
  224. *ImageableArea C9:        "1 16 260 623"
  225. *ImageableArea Comm10:    "3 16 278 668"
  226. *ImageableArea DL:        "3 16 293 608"
  227. *ImageableArea C5:        "4 16 440 634"
  228. *ImageableArea ISOB5:     "2 15 480 693"
  229. *?ImageableArea: "
  230.  save
  231.  /cvp { (                ) cvs print ( ) print } bind def
  232.  /upperright {10000 mul floor 10000 div} bind def
  233.  /lowerleft {10000 mul ceiling 10000 div} bind def
  234.  newpath clippath pathbbox
  235.  4 -2 roll exch 2 {lowerleft cvp} repeat
  236.  exch 2 {upperright cvp} repeat flush
  237.  restore
  238. "
  239. *End
  240.  
  241. *% These provide the physical dimensions of the paper (by keyword)
  242. *DefaultPaperDimension: Letter
  243. *PaperDimension Letter:    "612 792"
  244. *PaperDimension Legal:     "612 1008"
  245. *PaperDimension Executive: "522 756"
  246. *PaperDimension A4:        "595 842"
  247. *PaperDimension A5:        "420 595"
  248. *PaperDimension B5:        "516 729"
  249. *PaperDimension Monarch:   "279 540"
  250. *PaperDimension C9:        "279 639"
  251. *PaperDimension Comm10:    "297 684"
  252. *PaperDimension DL:        "312 624"
  253. *PaperDimension C5:        "459 649"
  254. *PaperDimension ISOB5:     "499 709"
  255.  
  256. *RequiresPageRegion All: True
  257. *OpenUI *InputSlot:  PickOne
  258. *OrderDependency: 20 AnySetup *InputSlot
  259. *DefaultInputSlot: Unknown
  260. *InputSlot Upper/Upper Tray: "0 statusdict /setpapertray get exec"
  261. *InputSlot Lower/Lower Tray: "
  262.  statusdict begin optionalfeeder { 1 }{ 0 }ifelse setpapertray end"
  263. *End
  264. *InputSlot Envelope/Envelope Feeder: "
  265.  statusdict begin envelopefeeder { 2 }{ 3 }ifelse setpapertray end"
  266. *End
  267. *InputSlot EnvelopeManual/Manual Envelope: "4 statusdict /setpapertray get exec"
  268. *?InputSlot: "
  269.  save
  270.  [ (Upper) (Lower) (Envelope) (Manual) (ManualEnvelope) ] statusdict /papertray get exec
  271.  {get exec} stopped { pop pop (Unknown) } if = flush
  272.  restore
  273.  "
  274. *End
  275. *CloseUI: *InputSlot
  276.  
  277. *OpenUI *ManualFeed/Manual Paper: Boolean
  278. *OrderDependency: 15 AnySetup *ManualFeed
  279. *DefaultManualFeed: False
  280. *ManualFeed True/On: "3 statusdict /setpapertray get exec"
  281. *ManualFeed False/Off: "statusdict /manualfeed false put"
  282. *?ManualFeed: "
  283.  save
  284.  statusdict /manualfeed get {(True)}{(False)}ifelse = flush
  285.  restore
  286.  "
  287. *End
  288. *CloseUI: *ManualFeed
  289.  
  290. *OpenUI *TraySwitch/Tray Linking: PickOne
  291. *OrderDependency: 50 AnySetup *TraySwitch
  292. *DefaultTraySwitch: PrtSet
  293. *TraySwitch PrtSet/Printer Setting:  ""
  294. *TraySwitch On/On:  "statusdict /trayswitch true put"
  295. *TraySwitch Off/Off: "statusdict /trayswitch false put"
  296. *?TraySwitch: "
  297.  save
  298.  statusdict /trayswitch get {(True)}{(False)}ifelse = flush
  299.  restore
  300.  "
  301. *End
  302. *CloseUI: *TraySwitch
  303.  
  304. *DefaultOutputOrder: Normal
  305. *OutputOrder Normal: ""
  306. *OutputOrder Reverse: ""
  307.  
  308. *% === Font Information =====================
  309.  
  310. *DefaultFont: Courier
  311. *Font Courier: Standard "(001.004)" Standard ROM
  312. *Font Courier-Bold: Standard "(001.004)" Standard ROM
  313. *Font Courier-BoldOblique: Standard "(001.004)" Standard  ROM
  314. *Font Courier-Oblique: Standard "(001.004)" Standard ROM
  315. *Font Helvetica: Standard "(001.002)" Standard       ROM
  316. *Font Helvetica-Bold: Standard "(001.002)" Standard  ROM
  317. *Font Helvetica-BoldOblique: Standard "(001.002)" Standard ROM
  318. *Font Helvetica-Narrow: Standard "(001.002)" Standard  ROM
  319. *Font Helvetica-Narrow-Bold: Standard "(001.002)" Standard  ROM
  320. *Font Helvetica-Narrow-BoldOblique: Standard "(001.002)" Standard ROM
  321. *Font Helvetica-Narrow-Oblique: Standard "(001.002)" Standard ROM
  322. *Font Helvetica-Oblique: Standard "(001.002)" Standard  ROM
  323. *Font Symbol: Special "(001.003)" Special  ROM
  324. *Font Times-Bold: Standard "(001.002)" Standard  ROM
  325. *Font Times-BoldItalic: Standard "(001.004)" Standard ROM
  326. *Font Times-Italic: Standard "(001.002)" Standard    ROM
  327. *Font Times-Roman: Standard "(001.002)" Standard   ROM
  328. *?FontQuery: "
  329.  save
  330.  /str 100 string dup 0 (fonts/) putinterval def
  331.  { count 1 gt
  332.    { exch dup str 6 94 getinterval cvs
  333.      (/) print print (:) print
  334.      FontDirectory exch known
  335.      {(Yes)}{(No)} ifelse =
  336.    }
  337.    {exit} ifelse
  338.  }bind loop
  339.  (*) = flush
  340.  restore
  341.  "
  342. *End
  343.  
  344. *?FontList: "save FontDirectory { pop == } bind forall flush (*) = flush restore"
  345.  
  346. *% Printer Messages (verbatim from printer):
  347. *Message: "%%  exitserver: permanent state may be changed  %%"
  348. *Message: "%%  Flushing: rest of job (to end-of-file) will be ignored  %%"
  349. *Message: "FontName\ not found, using Courier"
  350.  
  351. *% Status (format: %%  status: <one of these>  %% )
  352. *Status: "Printer Busy"
  353. *Status: "Warming Up"
  354. *Status: "PrinterError: Printer Offline"
  355. *Status: "PrinterError: Paper Out or Feed Failure - Tray 1"
  356. *Status: "PrinterError: Paper Out or Feed Failure - Tray 2"
  357. *Status: "PrinterError: Paper Out or Feed Failure - Envelope Feeder"
  358. *Status: "PrinterError: Load Paper Requested"
  359. *Status: "PrinterError: Load Envelope Requested"
  360. *Status: "PrinterError: Invalid Manual Insertion"
  361. *Status: "PrinterError: Wrong Paper Length"
  362. *Status: "PrinterError: Paper Jam"
  363. *Status: "PrinterError: Cover Open/Cartridge Not Installed"
  364. *Status: "PrinterError: Output Bin Full"
  365. *Status: "PrinterError: Default Storage Error"
  366. *Status: "PrinterError: Battery Low - Slot 1"
  367. *Status: "PrinterError: Battery Low - Slot 2"
  368. *Status: "PrinterError: Non-Download Font Card Installed - Slot 1"
  369. *Status: "PrinterError: Non-Download Font Card Installed - Slot 2"
  370. *Status: "PrinterError: Write-Protect Switch in Protect Position - Slot 1"
  371. *Status: "PrinterError: Write-Protect Switch in Protect Position - Slot 2"
  372. *Status: "PrinterError: Defective or Unprogrammed Card Installed - Slot 1"
  373. *Status: "PrinterError: Defective or Unprogrammed Card Installed - Slot 2"
  374. *Status: "PrinterError: Defective Font Card Installed - Slot 1"
  375. *Status: "PrinterError: Defective Font Card Installed - Slot 2"
  376. *Status: "PrinterError: Unsupported Card Installed - Slot 1"
  377. *Status: "PrinterError: Unsupported Card Installed - Slot 2"
  378. *Status: "PrinterError: Printer Busy"
  379. *Status: "PrinterError: Printer Error"
  380.  
  381. *% Input Sources (format: %%  status: <stat>; source: <one of these>  %% )
  382. *Source: "serial9"
  383. *Source: "serial25"
  384. *Source: "Centronics"
  385.  
  386. *% Printer Error (format: %%  PrinterError: <one of these>  %%)
  387. *PrinterError: "Printer Offline"
  388. *PrinterError: "Paper Out or Feed Failure - Tray 1"
  389. *PrinterError: "Paper Out or Feed Failure - Tray 2"
  390. *PrinterError: "Paper Out or Feed Failure - Envelope Feeder"
  391. *PrinterError: "Load Paper Requested"
  392. *PrinterError: "Load Envelope Requested"
  393. *PrinterError: "Invalid Manual Insertion"
  394. *PrinterError: "Wrong Paper Length"
  395. *PrinterError: "Paper Jam"
  396. *PrinterError: "Cover Open/Cartridge Not Installed"
  397. *PrinterError: "Output Bin Full"
  398. *PrinterError: "Default Storage Error"
  399. *PrinterError: "Battery Low - Slot 1"
  400. *PrinterError: "Battery Low - Slot 2"
  401. *PrinterError: "Non-Download Font Card Installed - Slot 1"
  402. *PrinterError: "Non-Download Font Card Installed - Slot 2"
  403. *PrinterError: "Write-Protect Switch in Protect Position - Slot 1"
  404. *PrinterError: "Write-Protect Switch in Protect Position - Slot 2"
  405. *PrinterError: "Defective or Unprogrammed Card Installed - Slot 1"
  406. *PrinterError: "Defective or Unprogrammed Card Installed - Slot 2"
  407. *PrinterError: "Defective Font Card Installed - Slot 1"
  408. *PrinterError: "Defective Font Card Installed - Slot 2"
  409. *PrinterError: "Unsupported Card Installed - Slot 1"
  410. *PrinterError: "Unsupported Card Installed - Slot 2"
  411. *PrinterError: "Printer Busy"
  412. *PrinterError: "Printer Error"
  413.  
  414. *%DeviceAdjustMatrix: "[1 0 0 1 0 0]"
  415.  
  416. *% === Color Separation Information =====================
  417.  
  418. *DefaultColorSep: ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi
  419.  
  420. *InkName: ProcessBlack/Process Black
  421. *InkName: CustomColor/Custom Color
  422. *InkName: ProcessCyan/Process Cyan
  423. *InkName: ProcessMagenta/Process Magenta
  424. *InkName: ProcessYellow/Process Yellow
  425.  
  426. *%  For 60 lpi / 300 dpi  ===============================
  427.  
  428. *ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
  429. *ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
  430. *ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
  431. *ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
  432. *ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"
  433.  
  434. *ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
  435. *ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
  436. *ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
  437. *ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
  438. *ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"
  439.  
  440. *%  For 53 lpi / 300 dpi  ===============================
  441.  
  442. *ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
  443. *ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
  444. *ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"
  445. *ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"
  446. *ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"
  447.  
  448. *ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
  449. *ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
  450. *ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
  451. *ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
  452. *ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"
  453.  
  454. *% End of PPD file for IBM LaserPrinter 4019
  455.